iT邦幫忙

2023 iThome 鐵人賽

DAY 8
0
Cloud Native

.NET雲端魔法尊者之路系列 第 8

2023-鐵人賽.NET雲端魔法尊者之路 Day8 C#篇 C# 物件導向

  • 分享至 

  • xImage
  •  

各位應該都知道 C# 是物件導向的程式設計語言,但其實被問到物件導向是甚麼,可能就有人回答不出來了 (包括我XD),所以我們今天就來探討甚麼是物件導向吧 ~ レ(゚∀゚;)ヘ ヘ( ゚∀゚;)ノ

什麼是物件導向?

物件導向程式設計(Object-oriented programming 簡稱 OOP)是種具有物件概念的程式設計典範,同時也是一種程式開發的抽象方針,簡單來說物件導向就像是把現實世界的事物,比如汽車、動物或電話,轉換成電腦可以理解和處理的方式。我們把這些事物看作是「物件」,每個物件有自己的特徵和行為,就像汽車有顏色、速度和駕駛方法一樣。

重要的物件導向程式語言包含Common Lisp、Python、C++、Objective-C、Smalltalk、Delphi、Java、Swift、C#、Perl、Ruby、JavaScript 與 PHP等

物件導向的特性

封裝(Encapsulation)

封裝是將數據(屬性)和操作(方法)封裝在一個單元(類別)中的過程。這意味著對象的內部實現細節對外部代碼是隱藏的。

繼承(Inheritance)

繼承允許一個類別(子類別)繼承另一個類別(父類別)的特性和方法。這促使代碼的重用和層次結構。

多態性(Polymorphism)

多態性允許不同的類別實現相同的方法或介面,但可以以不同的方式實現。

物件導向的優點

代碼重用性

將現有的類別(模板)用於創建新的類別。這鼓勵代碼的重用,減少了冗余代碼的量,節省時間和資源。

可維護性

通過封裝將數據和相關操作組織在一起,使代碼更容易理解和維護。修改一個類別的行為通常不會影響其他類別。

擴展性

繼承和多態性,使您能夠擴展現有的類別以創建新的功能或特性,而無需修改現有代碼。

可讀性

類別和對象的名稱通常反映了其功能,提高了代碼的可讀性。

代碼結構化

將代碼組織成模塊化結構,每個類別負責特定的功能。這有助於團隊合作,每個開發者可以專注於編寫特定類別的代碼。

安全性

封裝特性允許限制對數據和方法的訪問權限,提高了代碼的安全性,防止意外的數據修改或濫用。

代碼重構

代碼重構變得更容易。當需求變化時,您可以輕鬆地調整和改進代碼結構,而不必擔心影響其他部分的代碼。

結尾

今天介紹了物件導向的一些概念,下一篇就要正式在 C# 的世界中介紹物件導向囉 掰掰

參考資料

https://vocus.cc/article/631dfb3efd897800014d14e1

https://rayfly0225.wordpress.com/2016/06/20/c%E7%89%A9%E4%BB%B6%E5%B0%8E%E5%90%91object-oriented%E7%A8%8B%E5%BC%8F%E8%A8%AD%E8%A8%88%E6%80%9D%E7%B6%AD/

https://ithelp.ithome.com.tw/articles/10217305


上一篇
2023-鐵人賽.NET雲端魔法尊者之路 Day7 C#篇 C# 高階使徒
下一篇
2023-鐵人賽.NET雲端魔法尊者之路 Day9 C#篇 C# 物件導向程式實例
系列文
.NET雲端魔法尊者之路30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言